﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ProduceBasicData.Domain.ProductionManage
{
    public class CraftNode
    {

        public class Rootobject
        {
            public Node[] nodes { get; set; }
            public Edge[] edges { get; set; }
        }

        public class Node
        {
            public string id { get; set; }
            public string type { get; set; }
            public float x { get; set; }
            public float y { get; set; }
            public Text text { get; set; }
            public Properties properties { get; set; }
        }

        public class Text
        {
            public string value { get; set; }
            public float x { get; set; }
            public float y { get; set; }
            public bool draggable { get; set; }
            public bool editable { get; set; }
        }

        public class Properties
        {
            public string start { get; set; }
            public string CustomRect { get; set; }
            public string PropValue { get; set; }
            public int processId { get; set; }
            public string processCode { get; set; }
            public string processName { get; set; }
            public string processDesc { get; set; }
            public string processType { get; set; }
        }

        public class Edge
        {
            public string id { get; set; }
            public string type { get; set; }
            public string sourceNodeId { get; set; }
            public string targetNodeId { get; set; }
            public Text1 text { get; set; }
            public Startpoint startPoint { get; set; }
            public Endpoint endPoint { get; set; }
            public Pointslist[] pointsList { get; set; }
            public Properties1 properties { get; set; }
        }

        public class Text1
        {
            public string value { get; set; }
            public float x { get; set; }
            public float y { get; set; }
            public bool draggable { get; set; }
            public bool editable { get; set; }
        }

        public class Startpoint
        {
            public float x { get; set; }
            public float y { get; set; }
        }

        public class Endpoint
        {
            public float x { get; set; }
            public float y { get; set; }
        }

        public class Properties1
        {
        }

        public class Pointslist
        {
            public float x { get; set; }
            public float y { get; set; }
            public string id { get; set; }
        }

    }
}
